1. Field of the Invention
The present invention relates to a method of sharing data without any conflict in executing applications in which persistent data present in a data base and transient data, each of which exists only during execution of a certain application and disappears when the application is finished, are entangled intricately, such as in multimedia data processing.
2. Related Background Art
Generally, data base applications contain both objects (to be referred to as persistent objects hereinafter) which are present in a data base, shared by a plurality of applications, and used continuously, and transient objects (to be referred to as vaporizable objects hereinafter) each of which exists during execution of a certain application and disappears with the application process.
The "object" includes conventional record data or the tuple of an associative data base and indicates a general data structure that can be processed as a group of data having a single meaning.
An application making use of a data base generally contains both persistent objects and vaporizable objects. In an application of this type, particularly a situation in which a persistent object points to a vaporizable object by using a link or the like takes place. In such a situation, when the vaporizable object disappears with closing of the application process, the persistent data structure including the vaporizable object suffers a loss of data, losing its meaning as a whole.
As an example, assume that a graphic pattern is drawn by using a bit-map display and a mouse, and the sketch data formed is managed using a data base. In this case, communication information, such as a resource identifier including font information and color information used to display the sketch data, with respect to a window server, is a vaporizable object. Since these color information and font information disappear when the application is finished, the meaning as the sketch data is lost.
Conventionally, to avoid the above problem arising because two different types of objects exist, persistent objects to be stored in a computer by using a data base system are stored by describing only relationships with data to be stored in that data base without describing relationships with vaporizable objects. That is, an explicit or implicit reference relationship of data stored in the data base is closed in the data base in this sense, and this keeps the consistency of the data base. To keep this consistency, in a typical associative data base system, storage of the relationships between persistent objects and vaporizable objects is inhibited.
For this reason, an application requiring description of the relationship between a persistent object and a vaporizable object requires processing of copying a persistent object in a memory space of the application and describing the relationship between the persistent object copied and a vaporizable object. Conventionally, application programmers describe this procedure.
Such description of an application will be explained in detail below by taking processing, which performs data base management for sketch data to be displayed by using the X Window system, another common window system in workstations, as an example. In the X Window system, sketch data to be displayed in a window contains communication information (such as a resource identifier including font information and color information) used to communicate with a window server for actually displaying the data. In this system, a connection to the window server is established for each individual application process. Therefore, the communication information of one application process with respect to the window server is different from another, and in this sense, the communication information is a vaporizable object. The sketch data, therefore, has a vaporizable object as its attribute. This system, on the other hand, is to manage the sketch data in the window by using a data base, and so this part of the processing corresponds to a persistent object. In such a system, the following procedure is conventionally used to avoid mixing of persistent objects and vaporizable objects.
(1) A data structure to be stored in the data base is separated from a data structure to be stored in an application process such that only data inherent in a graphic pattern to be sketched, i.e., data except a vaporizable object, such as communication information with respect to the window server, is extracted from sketch data and stored in the data base. PA1 (2) When the application process is to make use of the sketch data, the data structure of graphic data containing the communication information is acquired, and the data fetched from the data base is embedded in the data structure, thereby forming a replica of the sketch data. Communication information with respect to the window server is established for this replica.
Application programmers must describe the above procedure by themselves.
For this reason, to add procedures or make changes in data models, that are unnecessary in programming of applications using no data base, application programmers must create a program for processing persistent objects and vaporizable objects without any conflict between them for each individual application. The result is a reduction in productivity of application programming.